内部协变量偏移(Internal Covariate Shift)
概述
在神经网络训练过程中,随着前面层的权重更新,每一层看到的输入分布在不断变化的现象,导致后面的层需要不断适应新的输入分布,大大减慢了训练速度。
关键内容
-
定义:这是 BatchNorm 论文(2015)提出的核心概念——在神经网络训练过程中,随着前面层的权重更新,每一层看到的输入分布在不断变化,导致后面的层需要不断适应新的输入分布。
-
类比理解:想象在教一个学生做加法,但每做完一道题就改变一次教材的字体、语言、符号系统——学生必须不断重新适应,学习效率极低。内部协变量偏移就是指神经网络中的这种现象。
-
外部协变量偏移对比:外部协变量偏移是指训练集和测试集的数据分布不同,而内部协变量偏移是指网络训练过程中各层之间的输入分布变化。
-
对训练的影响:由于每一层的输入分布不断变化,后续层需要不断适应新的输入分布,这使得训练过程变得缓慢且不稳定。为了应对这个问题,通常需要使用较小的学习率和更加谨慎的初始化策略。
-
Batch Normalization 的解决方案:Batch Normalization 通过在每一层的输出上进行归一化,强制将每一层的输入标准化为相同分布,从而解决内部协变量偏移问题。
-
理论争议:尽管 Batch Normalization 的论文声称其有效原因是减少内部协变量偏移,但 2018 年 MIT 的后续研究表明,BN 并没有显著减少内部协变量偏移,真正的有效原因是让优化景观(loss landscape)更加平滑。
来源
- raw/articles/ai-papers/foundations/paper_04_batchnorm.md — 论文精读 #04:批归一化
- Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift 论文
相关
- Batch Normalization — solved_by
- Sergey Ioffe — introduced_by
- Christian Szegedy — introduced_by
- 神经网络训练 — affects
- 优化景观 — relates_to